#include<iostream>
#include<fstream>
#include "Person.pb.h"

using namespace PersonalMessage;
int main(int argc, char const *argv[])
{

    GOOGLE_PROTOBUF_VERIFY_VERSION;
    Person person;
    person.set_name("alang");
    person.set_age(18);
    person.set_sex(Sex::MAN);
    person.set_email("3271405xxx@qq.com");
    person.set_is_married(false);
    person.set_address("amoy");

   // 添加第一个电话号码  
    Person::Phone* phone1 = person.add_phones();  
    phone1->set_number("1500857xxxx");  
    phone1->set_phoentype(Person::PHONE_TYPE_WORK); 

    // 添加第二个电话号码，并设置类型为家庭电话  
    Person::Phone* phone2 = person.add_phones();  
    phone2->set_number("1955922xxxx");
    phone2->set_phoentype(Person::PHONE_TYPE_HOME); 

    std::fstream output("person.bin", std::ios::out | std::ios::binary);  
    if (!output) {  
        std::cerr << "无法打开文件用于写入" << std::endl;  
        return 1;  
    }  
  
    // 序列化Person对象到文件流  
    if (!person.SerializeToOstream(&output)) {  
        std::cerr << "序列化到文件失败" << std::endl;  
        return 1;  
    }  
  
    output.close();
    return 0;
}
